Location Based Mobile Messaging Shopping Network

ABSTRACT

A location-based mobile messaging shopping network is provided that acquires location data from a mobile computing device (MCD), receives the location data at a server, generates a collection of businesses and individual sellers offering goods or services in the location associated with the location data based on the service area of the businesses and individual sellers and user location, and establishes a real-time communication channel between the businesses and MCD. The MCD displays various real-time communication channels to enable the user of the MCD to communicate with the businesses, and enables the user to purchase goods and services directly through the real-time communication channels displayed on the MCD.

RELATED APPLICATIONS

This is a continuation of, and claims priority to, U.S. application Ser.No. 16/889,466, filed on Jun. 1, 2020, titled LOCATION BASED MOBILEMESSAGING SHOPPING NETWORK, which claims benefit of U.S. ProvisionalApplication Ser. No. 62/854,940, filed on May 30, 2019, titled LOCATIONBASED MOBILE MESSAGING SHOPPING NETWORK, which application isincorporated in its entirety by reference in this application.

TECHNICAL FIELD

The present invention relates generally to mobile and computer-basedshopping and more particularly to mobile and computer-based shopping forgoods and services from local businesses and individual sellers.

BACKGROUND

With the widespread use of mobile devices for activities that used to becarried out primarily on computers, such as shopping, mobile webbrowsers and apps have become a primary communication channel betweenbusinesses and individual sellers selling goods and services andpurchasers of goods and services.

Local merchants and individual sellers often have great difficultyoffering and selling goods and services on mobile devices giventechnical limitations of posting all their goods and services towebsites on mobile devices and the difficulty of attracting localshoppers to their websites. Many local businesses and individual sellersdo not have websites, mobile-optimized websites, or mobile apps. If theydo, it is difficult for purchasers to know which businesses andindividual sellers service the location they are in at any moment. Ifthey do, it is difficult for purchasers to navigate across mobilewebsites to discover what local businesses and individual sellers havein stock for purchase at a particular time. There is, therefore, a needfor local businesses and individual sellers selling items to be able tooffer their goods and services effectively to purchasers on mobiledevices.

SUMMARY

The present disclosure provides computer systems and methods configuredfor providing a location-based mobile shopping computer networkconnecting local businesses and individual sellers selling items withlocal shoppers. The analysis and use can entail accessing alocation-based mobile shopping computer network, retrieving a network oflocal businesses and individual sellers selling goods and services inreal-time messaging groups via one or more communication channels oroptions, communicating with local businesses and individual sellers inthese groups, communicating with one local business or individual sellerin these groups or with multiple local businesses and sellerssimultaneously in these groups, and purchasing goods and services fromlocal businesses and individual sellers.

In one embodiment of the present invention, provided is a computersystem which: (a) receives a location identifier and identifyinginformation of the requesting user; (b) retrieves a group of localbusinesses and individual sellers offering goods and services for salein the location; (c) displays the local businesses and individualsellers in individual real-time chat groups for the purchaser to access.

In some aspects, users communicate through real-time messaging withbusinesses or individual sellers in real-time chat groups.

In some aspects, goods and services are displayed by the businesses orindividual sellers in real-time chat group messages.

In some aspects, a price or availability of a good or service isdisplayed by the businesses or individual sellers in real-time chatgroup messages.

In some aspects, the goods or services consist of a service, a tangiblegood or a digital good.

In some aspects, the system displays the name, stock keeping unit, barcode, identification number, identification code, description,merchandise image, merchandise video, color, vendor, manufacturer,inventory level, internet address and price of the good or service.

In some aspects, the code further configures the system to retrievemultiple users into a real-time messaging group and displays themultiple users and local businesses and individual sellers.

In some aspects, the code further configures the system to send a user anotification when additional messages or goods or services are deliveredinto a real-time messaging group.

In some aspects, the notification is a screen instant notification, atext message, a push notification, an electronic instant message, or anemail message.

In some aspects, the good or service is displayed on an interfaceconfigured to allow a user to purchase the good or service, to retrievemore information about the good or service, or learn more about thebusiness or individual seller offering the good or service.

In some aspects, the code further configures the system to initiate asearch in a real-time messaging group or groups for a good or service.

In some aspects, the code further configures the system to initiate asearch in a real-time messaging group for groups for a category of goodor service.

In some aspects, the code further configures the system to upload animage, photograph or video of, but not limited to, a product or service,in a real-time messaging group.

In some respects, the image, photograph, or video is displayed on aninterface configured to allow an individual or business to search for aproduct or service that is related to the image, photograph or video.

In some aspects, the code further configures the system to open andclose real-time messaging groups from access, temporarily orpermanently.

Also provided, in one embodiment of the present invention, is a computersystem which: (a) receives a location identifier and identifyinginformation of the requesting user; (b) retrieves a group of localbusinesses and individual sellers offering goods and services for salein the location; (c) allocates the local businesses and individualsellers into real-time chat groups based on an algorithm whoseinstructions calculate the set of messaging groups to render for theuser based on, but not limited to, characteristics of the location,number of available businesses and individual sellers, time of day, timeof year; (d) renders the local businesses and individual sellersaggregated in real-time chat groups, displayed on an interfaceconfigured to allow a user to communicate with multiple local businessesand individual sellers simultaneously; and (e) make purchases.

In some aspects, the real-time chat groups are aggregated aroundsubject-based categories such as, but not limited to, shopping, dining,shoes, gourmet, holiday shopping, hardware, groceries, and fashion.

In some aspects, the real-time chat groups are aggregated aroundtime-based categories such as, but not limited to, local events,seasons, and festivals.

In some aspects, the code further configures the system to initiate asearch in a real-time messaging group for a business or individualseller.

In some aspects, the code further configures the system to initiate asearch in a real-time messaging group for a category of business orindividual seller.

In some respects, the code further configures the system to (a) allow auser to create their own real-time messaging group; (b) retrieve a groupof local businesses and individual sellers offering goods and servicesfor sale in the location; (c) display the local businesses andindividual sellers on an interface configured so they can be selectedand invited into the user's own real-time messaging group; and (d) savethe real-time messaging group to access later.

In some respects, the code further configures the system to (a) allow abusiness or individual seller to create their own real-time messaginggroup; and (b) save the real-time messaging group to access later.

In some aspects, the code further configures the system to display localbusinesses and individual sellers on an interface configured so they canbe selected and invited into the business's or individual seller's ownreal-time messaging group.

In summary, a computing system for providing a location-based mobilemessaging shopping network is provided, the computing system comprising:a data store configured to store (1) user profile data for a pluralityof users of the location-based mobile messaging shopping network and (2)business profile data for a plurality of businesses providing goods orservices to users of the location-based mobile messaging shoppingnetwork; one or more processors; and an application module executable onthe one or more processors, the application module configured to atleast: (i) receive location data generated by and associated with amobile computing device (MCD); (ii) determine, based on the locationdata associated with the MCD, a service area location, wherein theservice area location is associated with one or more businesses orindividual sellers; (iii) generate a collection of one or morebusinesses or individual sellers offering a plurality of goods orservices for purchase in the determined service area location; (iv)establish a real-time communication channel between the one or morebusinesses or individual sellers and the MCD; (v) provide the collectionof one or more businesses or individual sellers to the MCD, wherein theMCD is configured to display the collection of one or more businesses orindividual sellers with one or more real-time communication channeloptions by which a user of the MCD can send a message to a selected oneof the businesses or individual sellers, wherein said message iscommunicated directly from the MCD to the selected one of the businessesor individual sellers through the real-time communication channelestablished by the computer server; and (vi) facilitate, through thereal-time communication channel, a purchase of a good or service by theuser of the MCD from the selected one of the businesses or individualsellers.

The computing system, wherein the real-time communication channel is atext or SMS (short message service) message. The computing system,wherein the good or service consists of a service, a tangible good, or adigital good. The computing system, wherein the application module isfurther configured to provide product information for the good orservice, wherein the product information includes the name, stockkeeping unit, bar code, identification number, identification code,description, merchandise image, merchandise video, color, vendor,manufacturer, inventory level, internet address, or price of the good orservice. The computing system, wherein the application module is furtherconfigured to initiate a search for a product category or a particulargood or service, wherein the search is requested by the user andreceived from the MCD. The computing system, wherein the establishedreal-time communication channel is a real-time chat group comprising (1)the user and (2) the one or more businesses or individual sellers,wherein the user can communicate with the one or more businesses orindividual sellers substantially simultaneously in the real-time chatgroup.

Non-transitory computer storage which stores executable programinstructions is provided that direct a computing system comprising oneor more computing devices to perform a process that comprises: (i)receiving, at a computer server, location data generated by andassociated with a mobile computing device (MCD); (ii) determining, bythe computer server, based on the location data associated with the MCD,a service area location, wherein the service area location is associatedwith one or more businesses or individual sellers; (iii) generating acollection of one or more businesses or individual sellers offering aplurality of goods or services for purchase in the determined servicearea location; (iv) establishing a real-time communication channelbetween the one or more businesses or individual sellers and the MCD;(v) providing the collection of one or more businesses or individualsellers to the MCD, wherein the MCD is configured to display thecollection of one or more businesses or individual sellers with one ormore real-time communication channel options by which a user of the MCDcan send a message to a selected one of the businesses or individualsellers, wherein said message is communicated directly from the MCD tothe selected one of the businesses or individual sellers through areal-time communication channel established by the computer server; and(vi) facilitating, through the real-time communication channel, apurchase of a good or service by the user of the MCD from the selectedone of the businesses or individual sellers.

The non-transitory computer storage, wherein the real-time communicationchannel is push notification for display on the MCD. The non-transitorycomputer storage, wherein the good or service consists of a service, atangible good, or a digital good. The non-transitory computer storage,wherein the process further comprises providing, to the MCD, productinformation for the good or service. The non-transitory computerstorage, wherein the process further comprises searching for a productcategory or a particular good or service, based on a search requestinitiated by the user as received from the MCD.

A computerized method for providing a location-based mobile messagingshopping network is further provided, the computerized methodcomprising: receiving, at a computer server, location data generated byand associated with a mobile computing device (MCD); determining, by thecomputer server, based on the location data associated with the MCD, aservice area location, wherein the service area location is associatedwith one or more businesses or individual sellers; generating acollection of one or more businesses or individual sellers offering aplurality of goods or services for purchase in the determined servicearea location; establishing a real-time communication channel betweenthe one or more businesses or individual sellers and the MCD; providingthe collection of one or more businesses or individual sellers to theMCD, wherein the MCD is configured to display the collection of one ormore businesses or individual sellers with a one or more real-timecommunication channel options by which a user of the MCD can send amessage to a selected one of the businesses or individual sellers,wherein said message is communicated directly from the MCD to theselected one of the businesses or individual sellers through thereal-time communication channel established by the computer server; andsearching for a product category or a particular good or service, basedon a search request initiated by the user as received from the MCD.

The computerized method, wherein the real-time communication channel isa text message channel or SMS (short message service). The computerizedmethod further comprising: facilitating, through the real-timecommunication channel, a purchase of a good or service by the user ofthe MCD from the selected one of the businesses or individual sellers.The computerized method further comprising: providing, to the MCD,product information for the good or service. The computerized method,wherein the established real-time communication channel is a real-timechat group comprising (1) the user and (2) the one or more businesses orindividual sellers, wherein the user can communicate with the one ormore businesses or individual sellers substantially simultaneously inthe real-time chat group.

A computerized method for providing a location-based mobile messagingshopping network is further provided, the computerized methodcomprising: generating, at a mobile computing device (MCD), locationdata associated with the MCD; providing the location data associatedwith the MCD to a remote computer server, wherein the remote computerserver is configured to determine a service area location, based on thelocation data associated with the MCD, wherein the service area locationis associated with one or more businesses or individual sellers;receiving, from the remote computer server, a collection of one or morebusinesses or individual sellers offering a plurality of goods orservices for purchase in the determined service area location;displaying the collection of one or more businesses or individualsellers with a one or more real-time communication options by which auser of the MCD can send a message to a selected one of the businessesor individual sellers, wherein said message is communicated directlyfrom the MCD to the selected one of the businesses or individual sellersthrough a real-time communication channel established by the remotecomputer server; and enabling the user of the MCD to purchase of a goodor service from the selected one of the businesses or individualsellers, wherein the purchase is conducted through the establishedreal-time communication channel.

The computerized method may further comprise allowing the user torequest more information about the good or service. The computerizedmethod may further comprise displaying product information for the goodor service, wherein the product information includes the name, stockkeeping unit, bar code, identification number, identification code,description, merchandise image, merchandise video, color, vendor,manufacturer, inventory level, internet address, or price of the good orservice. The computerized method where the established real-timecommunication channel is a real-time chat group comprising (1) the userand (2) the one or more businesses or individual sellers, wherein theuser can communicate with the one or more businesses or individualsellers substantially simultaneously in the real-time chat group.

Other devices, apparatus, systems, methods, features, and advantages ofthe invention will be or will become apparent to one with skill in theart upon examination of the following figures and detailed description.It is intended that all such additional systems, methods, features, andadvantages be included within this description, be within the scope ofthe invention, and be protected by the accompanying claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention can be better understood by referring to the followingfigures. The components in the figures are not necessarily to scale,emphasis instead being placed upon illustrating the principles of theinvention. In the figures, like reference numerals designatecorresponding parts throughout the different views.

FIG. 1 is a block diagram 100 of a server 102 executing instructions fora location-based mobile messaging shopping approach in accordance withan example implementation of the invention.

FIG. 2 is a block diagram 200 of a computing device 202 configured toexecute instructions for communicating with the server 102 of FIG. 1 inaccordance with an example implementation of the invention.

FIG. 3 is a block diagram 300 of a mobile computing device (MCD) 302configured to execute instructions for communication with the server 102of FIG. 1 in accordance with an example implementation.

FIG. 4 is an illustration 400 of a location-based mobile shoppingcomputer network connecting local businesses and individual sellersselling items with local shoppers via their MCD 302 of FIG. 3.

FIG. 5 is a depiction 500 of an interface 502 in the display 318 of MCD302 of FIG. 3 in accordance with an example implementation.

FIG. 6 is a depiction 600 of an interface 602 in the display 318 of MCD302 of FIG. 3 in accordance with an example implementation.

FIG. 7 is a depiction 700 of an interface 702 in the display 318 of MCD302 of FIG. 3 of a real-time messaging group 704 in accordance with anexample implementation.

FIG. 8 is a depiction 800 of an interface 702 of FIG. 7 in the display318 of MCD 302 of FIG. 3 of a real-time messaging group 804 with imagesin accordance with an example implementation.

FIG. 9 is a depiction 900 of an interface 902 in the display 318 of MCD302 of FIG. 3 of the goods offered by a business with a price inaccordance with an example implementation.

FIG. 10 is a depiction 1000 of an interface 1002 in the display 318 ofMCD 302 of FIG. 3 of a product detail's 1004 offered by a business witha price 1006 and buy button 1008 in accordance with an exampleimplementation.

FIG. 11 is a flowchart 1100 illustrating a process implemented by alocation-based mobile shopping network according to an exemplaryembodiment.

DETAILED DESCRIPTION

An approach is described for a computer system and method configured forproviding a location-based mobile shopping computer network connectinglocal businesses and individual sellers selling goods and services withlocal shoppers. While the detailed description below discussesconnecting local businesses and/or individual sellers selling goods andservices to local shoppers, it is recognized that the local shoppingnetwork may also, without departing from the scope of the invention,connect local shoppers to the sellers of specific goods or specificbranded goods (sold, for example, through local shops) and/or to globalretail chains or other sellers of goods and/services within a givenarea.

In FIG. 1, a block diagram 100 of a server 102 executing instructionsfor a location-based mobile messaging shopping approach is depicted inaccordance with an example implementation of the invention. The server102 has at least one processor or controller 104 coupled to a memory108, communication interfaces 110 (e.g., wireless and/or wired) powermodule 112, human interface 114 (e.g., mouse, keyboard, microphone,camera), data store 116 (e.g., cloud storage, external database,internal disk), display 118 (e.g., graphics/video card, monitor) by abus 106 (e.g., data, address, and/or power). The memory may besubdivided into an application memory 120 and operating system memory122. The memory 108 may be RAM/ROM/EEPROM/PROM to give but a fewexamples. The communication interfaces 110 connect the server 102 withone or more other networks, such as the internet/cloud 124. In otherimplementations, other networks may be accessed prior to or in additionto the Internet cloud 124.

Turning to FIG. 2, a block diagram 200 of a computing device (e.g.,desktop, laptop, tablet, smartphone, electronic book reader, wearabledevice, any type of portable computing device, or any other type ofcomputer) 202 executing instructions for communicating with the server102 of FIG. 1 is depicted in accordance with an example implementationof the invention. The computer 202 has at least one processor orcontroller 204 coupled to a memory 208, communication interfaces 210(e.g., wireless and/or wired) power module 212, human interface 214(e.g., mouse, keyboard, microphone, camera), data store 216 (e.g., cloudstorage, external database, internal disk), display 218 (e.g.,graphics/video card, monitor) by a bus 206 (e.g., data, address, and/orpower). The memory may be subdivided into an application memory 220 andoperating system memory 222. The memory 208 may be RAM/ROM/EEPROM/PROMto give but a few examples. The communication interfaces 210 connect thecomputer 202 with one or more other networks, such as the internet/cloud124. In other implementations, other networks may be accessed prior toor in addition to the internet cloud 124.

In FIG. 3, a block diagram 300 of a mobile computing device (MCD) (e.g.,a smartphone, tablet, electronic book reader, wearable device, or anyother type of portable computing device) 302 executing instructions forcommunication with the server 102 of FIG. 1 is depicted in accordancewith an example implementation. The MCD 302 has at least one processoror controller 304 coupled to a memory 308, communication interfaces 310(e.g., cellular, wireless internet, Bluetooth, GPS), power module 312that may also be coupled with the communication interfaces via USB type(A, B, C, etc. . . . ) connector, user interface 314 (e.g., touchscreen, microphone), scanner/camera module 316, display 318 (e.g.,graphics/video card, monitor) by a bus 306 (e.g., data, address, and/orpower). The memory may be subdivided into a mobile application memory320 and operating system/records memory 322. The memory 108 may beRAM/ROM/EEPROM/PROM to give but a few examples. The communicationinterfaces 110 connect the server 102 with one or more other networks,such as the internet/cloud 124 and also may connect to a cellularnetwork. In other implementations, other networks may be accessed priorto or in addition to the internet cloud 124.

FIG. 4 depicts an illustration 400 of a location-based mobile shoppingcomputer network connecting local businesses 404, 406 selling items withlocal shoppers via their MCD 302 of FIG. 3. The MCD 302 receiveslocation information from a plurality of GPS satellites (represented bysatellite 401) and/or cellular network 408. The MCD 302 may alsocommunicate with a data network, such as the internet 124 via wirelessinternet or the cellular network 408.

A server 102 hosting and/or accessing data for the location-based mobileshopping computer network is connected to the internet 124. Similarly,businesses 404 and 406 with computing devices 202 and 402 respectivelyare also connected to the internet 124. Depending upon theimplementation, the computing devices s 202 and 402 may be connected tothe cellular network 408.

The server 102 receives a location identifier from the MCD 302 while alocal shopping application is active (e.g., currently executing or“running” via the at least one processor or controller 304, executingthe application code in memory 308) on the MCD 302. The locationidentifier may be generated from GPS satellite 410 data, location datafrom the cellular network, or other mapping approaches. The locationidentifier is used at the server 102 to identify information of therequesting user of MCD 302. The application at the server accesses adatabase or data store 116, and retrieves a group of local businessesand individual sellers offering goods and services for sale in one ormore locations in proximity to the location identifier. The proximitymay be relative to the location identifier (e.g., within 1 mile of thelocation identifier, within 100 feet of the location identifier, and soon). The proximity may be, for example, a predetermined range, or apreference specified by the user. The server then transmits data to theMCD 302 that results in display 318 displaying local businesses (404,406) and individual sellers in real-time chat groups on the MCD 302 forthe user (purchaser) of the MCD 302 to access.

The user of the MCD 302 may then communicate through real-time messagingover either the internet 104 or cellular network 408 with the computingdevices 202, 402 associated with the respective businesses 404, 406 orindividual sellers in real-time chat groups. Goods and services offeredby the business 404 and 406 are displayed by the sellers in real-timechat group messages received at the MCD 302. The price or availabilityof goods (tangible or digital) or services may be provided by thebusinesses 404, 406 or individual sellers and displayed in the real-timechat group messages. The MCD 302 may display the name, stock keepingunit, bar code, identification number, identification code, description,merchandise image, merchandise video, color, vendor, manufacturer,inventory level, internet address, price, and/or other information aboutthe good or service. It is recognized that not all the information isrequired to be displayed on MDC 302, but rather are optionally provided.Further, the description may include an image, photograph, or video of,but not limited to, a product or service. In other implementations,multiple MCDs may be grouped into a real-time messaging group withmultiple users' MCDs and local businesses 404, 406 and individualsellers all participating in the messaging group. Real-time messaginggroups may be open or closed real-time messaging groups that controlaccess to the real-time messaging group (e.g., who can access, whetheraccess is temporary or permanent, and/or other user permissions). Users,businesses, and individual sellers may communicate through the real-timemessaging groups via one or more communication channels or optionsincluding but not limited to a text or SMS (short message service)message, a push notification, an electronic instant message, an emailmessage, or any combination thereof.

A user notification via the MCD 302 may be generated when additionalmessages or goods or services are delivered into a real-time messaginggroup. The notification may be an instant notification presented withinlocal shopping application, but in other implementations may be a textor SMS (short message service) message, a push notification, anelectronic instant message, an email message, or any combination of aninstant notification, a text message, a push notification, an electronicinstant message, and an email message.

The good(s) or service(s) are displayed in the display 318 via a userinterface of the local shopping application configured on the MCD 302 toallow a user to purchase the good(s) or service(s), to retrieve moreinformation about the good(s) or service(s), or learn more about thebusiness or individual seller offering the good(s) or service(s). Thisadditional information may be presented via the existing chat group orin some implementations, by direct individual messaging betweencomputing device 202 of the business 404 and the MCD 302.

A search in a real-time messaging group or groups for a good or servicemay also be conducted from the local shopping application executing onthe MCD 302. The server 102 may receive a request from the MCD 302 toinitiate a search in a real-time messaging group for a category of agood or service, or for a particular good or service, or similar searchrequests.

In some respects, an image, photograph, or video may be displayed on acomputing device, such as 202 or 402, in an interface configured toallow an individual or business to search for a product or service thatis related to goods or service associated with the image, photograph orvideo.

In another implementation, a server 102 receives a location identifierfrom the MCD 302 and identifying information of the requesting user. Theserver 102 retrieves a group of local businesses 404, 406 and individualsellers offering goods and services for sale in the location encompassedby the location identifier using information contained in data store116. The server 102 allocates the local businesses 404, 406 andindividual sellers into real-time chat groups based on similargroupings. A set of messaging groups to render for the MCD 302 based on,but not limited to, characteristics of the location, number of availablebusinesses and individual sellers, time of day, time of year. It isnoted that the real-time chat groups may also be aggregated or generatedaround time-based categories such as, but not limited to, local events,seasons, and festivals.

In other implementations, the server 102 may allow an MCD 302 to createits own real-time messaging group and retrieve a group of localbusinesses and individual sellers offering goods and services for salein a particular location. The location may be specified by the user ofMCD 302, or generated automatically based on a current location, orbased on a future location which may be known or otherwise predicted(e.g., based upon a known itinerary which may be specified by the useror determined by another process, such as a calendar application whichstores information about the user's future plans of when and where theuser will be). The MCD 302 may save the real-time messaging group forthe user to access later, such as when the user is at the location usedto generate the real-time messaging group.

FIG. 5 illustrates an example user interface 502 for allowing a user toview and/or manage his or her shopping stations in one exampleimplementation, which may be generated by the local shopping applicationand presented in the display 318 of MCD 302 of FIG. 3, is shown inaccordance with an example implementation. The MCD 302 executesinstructions for the local shopping application from mobile applicationmemory 320 that generates the interface 502. Interface 502 enables newstations to be defined 504, find nearby stations 508, and groupings ofbusiness such as the arts 510, ladies shoes 512, gourmet 514, andfashion 516. Other groupings not shown in interface 502 may also bepossible. The definition of new stations results in a new entry in thedatabase or data store 116. The grouping of businesses into categoriesoccurs at server 102. The user of the MCD 302 can select one of thedisplayed categories for messaging 510, 512, 514, and 516, to receiveadditional information about businesses, sellers, goods, and services.

FIG. 6 illustrates an example user interface 602 for allowing a user toview and/or manage his or her shopping stations in another exampleimplementation, which may be generated by the local shopping applicationand presented in the display 318 of MCD 302 of FIG. 3. For example, theMCD 302 executes instructions for the local shopping application frommobile application memory 320 in order to generate the user interface602. As illustrated, user interface 602 can enable the user to definenew stations 504, to find nearby stations 508, and to view groupings ofbusinesses or sellers such as the arts 610, ladies shoes 612, gourmet614, and fashion 616. The grouping of businesses into categories canoccur, for example, at server 102. The user of the MCD 302 can selectone of the displayed categories 610, 612, 614, and 616 for messaging,for example to receive additional information about businesses, sellers,goods, and services.

FIG. 7 illustrates an example user interface 702 for a user view andsend messages as part of a real-time messaging group in one exampleimplementation, which may be generated by the local shopping applicationand presented in the display 318 of MCD 302 of FIG. 3. In this example,the station title is “London Dining.” Interface 702 displays thereal-time messaging group 704 with a plurality of messages betweenbusiness users representing the businesses DTLon Hotels and NopiRestaurant and at least one shopping user. FIG. 8 continues the view ofuser interface 702 of FIG. 7, illustrating a real-time messaging group804 with images embedded in the message as shown in accordance with anexample implementation.

FIG. 9 illustrates an example user interface 902 for allowing a user toview goods or services offered by a business 404 in one exampleimplementation, which may be generated by the local shopping applicationand presented in the display 318 of MCD 302 of FIG. 3. In the example aparticular product is displayed with an image, a brief description, anda price. A message may be composed in the message section 904 so that,for example, the user can ask questions about the product, and areal-time message is sent via a real-time message group to associated acomputing device(s) 202 at business(es) 404.

FIG. 10 illustrates an example user interface 1002 for allowing a userto view more product details in one example implementation, which may begenerated by the local shopping application and presented in the display318 of MCD 302 of FIG. 3. User interface 1002 shows product details 1004offered by a business with a price 1006 and buy button 1008. The userinterface 1002 provides product details about a product that is locatedat a business or seller nearby, which may for example be provided to theuser's MCD 302 by a business 404. The user at the MCD 302 may bepresented with an option to purchase the product by selecting the buybutton 1008. The purchase transaction may then be carried out by thebusiness, such as business 404. In other implementations, thetransaction may occur at the server 102 with payment informationreceived via the MCD 302 and appropriate corresponding credit beinggenerated for the business 402.

FIG. 11 schematically illustrates a logical flow diagram of a process1100 for providing a location-based mobile shopping network according toan exemplary embodiment. The process 1100 may be executed, for example,by server 102 of FIG. 1. In one embodiment, the process 1100 may also beexecuted in whole or in part by MCD 302, in communication with theserver 102. In various embodiments, fewer blocks or additional blocksmay be included in the process, or various blocks may be performed in anorder different from that shown in FIG. 11. For ease of illustration,the process 1100 will be described as being executed in part by the MCD302 and in part by the server 102.

The process 1100 starts at step 1102 with the mobile application (e.g.,the local shopping app) obtaining a location identifier from the MCD302. The MCD 302 transmits the location identifier to the server 102 instep 1104. The server receives the location identifiers in step 1106. Instep 1108, the server computes a collection (or matrix) of businessesand individual sellers, based at least in part on the received locationidentifiers and on the bounds of service area associated with businessesand individual sellers. The bounds of service area data may be retrievedfrom, for example, a data store 116. At step 1110, the server 102filters the list of businesses and individual sellers based on theuser's stored preferences, which may also be located in and retrievedfrom the data store 116. At step 1112, the server 102 allocates thebusinesses and individual sellers into one or more real-time chatmessaging groups. At step 1114, the server 102 then transmits the matrixof real-time chat messaging groups to the MCD 302. The MCD 302 runningthe mobile application displays the matrix of real-time chat messaginggroups in the MCD's interface in step 1116. At step 1118, the user, viathe MCD 302, can communicate with a business 402 and individual sellers.At step 1120, the user may be offered the opportunity to purchase goodsor services.

It will be understood and is appreciated by persons skilled in the art,that one or more processes, sub-processes, or process steps described inconnection with FIG. 11 may be performed by hardware and/or software(machine-readable instructions). If the approach is performed bysoftware, the software may reside in software memory in a suitableelectronic processing component or system such as one or more of thefunctional components or modules schematically depicted in the figures.

The software in software memory may include an ordered listing ofexecutable instructions for implementing logical functions (that is,“logic” that may be implemented either in digital forms such as digitalcircuitry or source code or in analog forms such as analog circuitry oran analog source such an analog electrical, sound or video signal), andmay selectively be embodied in any computer-readable medium for use byor in connection with an instruction execution system, apparatus, ordevice, such as a computer-based system, processor containing system, orother system that may selectively fetch the instructions from theinstruction execution system, apparatus, or device and execute theinstructions. In the context of this disclosure, a “computer-readablemedium” is any tangible means that may contain or store the program foruse by or in connection with the instruction execution system,apparatus, or device. The tangible computer readable medium mayselectively be, for example, but is not limited to, an electronic,magnetic, optical, electromagnetic, or semiconductor system, apparatus,or device. More specific examples, but nonetheless a non-exhaustivelist, of tangible computer-readable media would include the following: aportable computer diskette (magnetic), a RAM (electronic), a read-onlymemory “ROM” (electronic), an erasable programmable read-only memory(EPROM or Flash memory) (electronic) and a portable compact discread-only memory “CDROM” (optical). Note that the tangiblecomputer-readable medium may even be paper (punch cards or punch tape)or another suitable medium upon which the instructions may beelectronically captured, then compiled, interpreted or otherwiseprocessed in a suitable manner if necessary, and stored in computermemory.

Additional Embodiments

In general, any of the routines, processes, methods, or criteriadisclosed herein for providing a location-based mobile shopping computernetwork can be used individually or in combination with any of the otherroutines, processes, methods or criteria disclosed herein.

In some embodiments, the server 102 may be configured differently,include different components or modules, and/or omit some components ormodules shown in FIG. 1. For example, in one embodiment, server 102includes one or more hardware processors in communication with acomputer readable medium storing software modules including instructionsthat are executable by the one or more hardware processors, and one ormore software modules. The one or more hardware processors may include,for example, digital logic circuitry. The one or more software modulesmay instruct a computing system to execute the various methods,approaches, and/or techniques as described herein.

As described above, the server 102 can be implemented by a computingsystem that includes one or more physical servers or other computingmachines, such as several computing machines interconnected via anetwork. Thus, each of the components depicted in the server 102 caninclude hardware and/or software for performing various features. In oneembodiment, the server 102 is implemented in association with a web siteor collection of web sites. Various disclosed features can beincorporated into a mobile device operating system, a mobileapplication, a sport league administration site or service, a socialnetworking service, or any combination of these.

The server 102 can include one or more servers for receiving andresponding to network requests from the mobile computing device(s) 302and/or business computing devices 402. The one or more servers caninclude web servers, application servers, database servers, combinationsof the same, or the like. In some embodiments, the Internet/cloud 124 isa publicly accessible network of linked networks, possibly operated byvarious distinct parties, such as the Internet. In other embodiments,the Internet/cloud 124 may be a private network, such as, for example, acorporate or university network that is wholly or partially inaccessibleto non-privileged users. In still other embodiments, the Internet/cloud124 may include one or more private networks with access to and/or fromthe Internet.

The processing of the various components of the server 102 can bedistributed across multiple machines, networks, and other computingresources. The various components of the server 102 can also beimplemented in one or more virtual machines, rather than in dedicatedservers. Likewise, the data repositories shown can represent physicaland/or logical data storage, including, for example, storage areanetworks or other distributed storage systems. Moreover, in someembodiments the connections between the components shown representpossible paths of data flow, rather than actual connections betweenhardware. While some examples of possible connections are shown, any ofthe subset of the components shown can communicate with any other subsetof components in various implementations.

In some embodiments, the server 102 may be configured differently thanillustrated in the figures above. For example, various functionalitiesprovided by the illustrated modules can be combined, rearranged, added,or deleted. In some embodiments, additional or different processors ormodules may perform some or all of the functionalities described withreference to the example embodiment illustrated in the figures above.Many implementation variations are possible.

In some embodiments, the server 102 may be implemented on, or incommunication with, one or more hosted computing environments. Thehosted computing environments may include a collection of rapidlyprovisioned and released computing resources hosted in connection withthe server 102. Such computing resources may be referred to,individually, as host computing devices. The computing resources mayfurther include a number of computing, networking, and storage devicesin communication with one another. In some embodiments, the computingdevices may correspond to physical computing devices. In otherembodiments, the computing devices may correspond to virtual machineinstances implemented by one or more physical computing devices. Instill other embodiments, computing devices may correspond to bothvirtual computing devices and physical computing devices. A hostedcomputing environment may also be referred to as a cloud computingenvironment.

Each of the processes, methods, and algorithms described in thepreceding sections may be embodied in, and fully or partially automatedby, code modules executed by one or more computers, computer processors,or machines configured to execute computer instructions. The codemodules may be stored on any type of non-transitory computer-readablemedium or tangible computer storage device, such as hard drives, solidstate memory, optical disc, and/or the like. The processes andalgorithms may be implemented partially or wholly inapplication-specific circuitry. The results of the disclosed processesand process steps may be stored, persistently or otherwise, in any typeof non-transitory computer storage such as, e.g., volatile ornon-volatile storage.

Depending on the embodiment, certain acts, events, or functions of anyof the processes or algorithms described herein can be performed in adifferent sequence, can be added, merged, or left out altogether (e.g.,not all described operations or events are necessary for the practice ofthe algorithm). Moreover, in certain embodiments, operations or eventscan be performed concurrently, e.g., through multi-threaded processing,interrupt processing, or multiple processors or processor cores or onother parallel architectures, rather than sequentially.

Conditional language used herein, such as, among others, “can,” “could,”“might,” “may,” “e.g.,” and the like, unless specifically statedotherwise, or otherwise understood within the context as used, isgenerally intended to convey that certain embodiments include, whileother embodiments do not include, certain features, elements and/orsteps. Thus, such conditional language is not generally intended toimply that features, elements and/or steps are in any way required forone or more embodiments or that one or more embodiments necessarilyinclude logic for deciding, with or without author input or prompting,whether these features, elements and/or steps are included or are to beperformed in any particular embodiment. The terms “comprising,”“including,” “having,” and the like are synonymous and are usedinclusively, in an open-ended fashion, and do not exclude additionalelements, features, acts, operations and so forth. Also, the term “or”is used in its inclusive sense (and not in its exclusive sense) so thatwhen used, for example, to connect a list of elements, the term “or”means one, some, or all of the elements in the list.

Disjunctive language such as the phrase “at least one of X, Y, and Z,”unless specifically stated otherwise, is otherwise understood with thecontext as used in general to present that an item, term, etc., may beeither X, Y, or Z, or any combination thereof (e.g., X, Y, and/or Z).Thus, such disjunctive language is not generally intended to, and shouldnot, imply that certain embodiments require at least one of X, at leastone of Y, and at least one of Z.

While the above detailed description has shown, described and pointedout novel features as applied to various embodiments, it can beunderstood that various omissions, substitutions and changes in the formand details of the devices or algorithms illustrated can be made withoutdeparting from the spirit of the disclosure. As can be recognized,certain embodiments described herein can be embodied within a form thatdoes not provide all of the features and benefits set forth herein, assome features can be used or practiced separately from others. The scopeof certain embodiments disclosed herein is indicated by the appendedclaims rather than by the foregoing description. All changes that comewithin the meaning and range of equivalency of the claims are to beembraced within their scope.

I claim:
 1. A computing system for providing a location-based mobilemessaging shopping network, the computing system comprising: a datastore configured to store (1) user profile data for a plurality of usersof the location-based mobile messaging shopping network and (2) businessprofile data for a plurality of businesses providing goods or servicesto users of the location-based mobile messaging shopping network; one ormore processors; and an application module executable on the one or moreprocessors, the application module configured to at least: receivelocation data generated by and associated with a mobile computing device(MCD); determine, based on the location data associated with the MCD, aservice area location, wherein the service area location is associatedwith one or more businesses or individual sellers; generate a collectionof one or more businesses or individual sellers offering a plurality ofgoods or services for purchase in the determined service area location;establish a real-time communication channel between the one or morebusinesses or individual sellers and the MCD; and provide the collectionof one or more businesses or individual sellers to the MCD, wherein theMCD is configured to display the collection of one or more businesses orindividual sellers with one or more real-time communication channeloptions by which a user of the MCD can send a message to a selected oneof the businesses or individual sellers, wherein said message iscommunicated directly from the MCD to the selected one of the businessesor individual sellers through the real-time communication channelestablished by the computer server.
 2. The computing system of claim 1,wherein the real-time communication channel is a text or SMS (shortmessage service) message.
 3. The computing system of claim 1, furthercomprising facilitate, through the real-time communication channel, apurchase of a good or service by the user of the MCD from the selectedone of the businesses or individual sellers.
 4. The computing system ofclaim 3 wherein the good or service consists of a service, a tangiblegood, or a digital good.
 5. The computing system of claim 3, wherein theapplication module is further configured to provide product informationfor a good or service, wherein the product information includes thename, stock keeping unit, bar code, identification number,identification code, description, merchandise image, merchandise video,color, vendor, manufacturer, inventory level, internet address, or priceof the good or service.
 6. The computing system of claim 1, wherein theapplication module is further configured to initiate a search for aproduct category or a particular good or service, wherein the search isrequested by the user and received from the MCD.
 7. The computing systemof claim 1, wherein the established real-time communication channel is areal-time chat group comprising (1) the user and (2) the one or morebusinesses or individual sellers, wherein the user can communicate withthe one or more businesses or individual sellers substantiallysimultaneously in the real-time chat group.
 8. Non-transitory computerstorage which stores executable program instructions that direct acomputing system comprising one or more computing devices to perform aprocess that comprises: receiving, at a computer server, location datagenerated by and associated with a mobile computing device (MCD);determining, by the computer server, based on the location dataassociated with the MCD, a service area location, wherein the servicearea location is associated with one or more businesses or individualsellers; generating a collection of one or more businesses or individualsellers offering a plurality of goods or services for purchase in thedetermined service area location; establishing a real-time communicationchannel between the one or more businesses or individual sellers and theMCD; and providing the collection of one or more businesses orindividual sellers to the MCD, wherein the MCD is configured to displaythe collection of one or more businesses or individual sellers with oneor more real-time communication channel options by which a user of theMCD can send a message to a selected one of the businesses or individualsellers, wherein said message is communicated directly from the MCD tothe selected one of the businesses or individual sellers through areal-time communication channel established by the computer server. 9.The non-transitory computer storage of claim 7, wherein the real-timecommunication channel is push notification for display on the MCD. 10.The non-transitory computer storage of claim 7, further comprisingfacilitate, through the real-time communication channel, a purchase of agood or service by the user of the MCD from the selected one of thebusinesses or individual sellers.
 11. The non-transitory computerstorage of claim 10, wherein the good or service consists of a service,a tangible good, or a digital good.
 12. The non-transitory computerstorage of claim 7, wherein the process further comprises providing, tothe MCD, product information for a good or service.
 13. Thenon-transitory computer storage of claim 7, wherein the process furthercomprises searching for a product category or a particular good orservice, based on a search request initiated by the user as receivedfrom the MCD.
 14. A computerized method for providing a location-basedmobile messaging shopping network, the computerized method comprising:receiving, at a computer server, location data generated by andassociated with a mobile computing device (MCD); determining, by thecomputer server, based on the location data associated with the MCD, aservice area location, wherein the service area location is associatedwith one or more businesses or individual sellers; generating acollection of one or more businesses or individual sellers offering aplurality of goods or services for purchase in the determined servicearea location; establishing a real-time communication channel betweenthe one or more businesses or individual sellers and the MCD; andproviding the collection of one or more businesses or individual sellersto the MCD, wherein the MCD is configured to display the collection ofone or more businesses or individual sellers with a one or morereal-time communication channel options by which a user of the MCD cansend a message to a selected one of the businesses or individualsellers, wherein said message is communicated directly from the MCD tothe selected one of the businesses or individual sellers through thereal-time communication channel established by the computer server. 15.The computerized method of claim 14, wherein the real-time communicationchannel is a text message channel or SMS (short message service). 16.The computerized method of claim 14, further comprising facilitating,through the real-time communication channel, a purchase of a good orservice by the user of the MCD from the selected one of the businessesor individual sellers.
 17. The computerized method of claim 14, furthercomprising searching for a product category or a particular good orservice, based on a search request initiated by the user as receivedfrom the MCD.
 18. The computerized method of claim 17 providing, to theMCD, product information for the good or service.
 19. The computerizedmethod of claim 14, wherein the established real-time communicationchannel is a real-time chat group comprising (1) the user and (2) theone or more businesses or individual sellers, wherein the user cancommunicate with the one or more businesses or individual sellerssubstantially simultaneously in the real-time chat group.
 20. Acomputerized method for providing a location-based mobile messagingshopping network, the computerized method comprising: generating, at amobile computing device (MCD), location data associated with the MCD;providing the location data associated with the MCD to a remote computerserver, wherein the remote computer server is configured to determine aservice area location, based on the location data associated with theMCD, wherein the service area location is associated with one or morebusinesses or individual sellers; receiving, from the remote computerserver, a collection of one or more businesses or individual sellersoffering a plurality of goods or services for purchase in the determinedservice area location; displaying the collection of one or morebusinesses or individual sellers with a one or more real-timecommunication options by which a user of the MCD can send a message to aselected one of the businesses or individual sellers, wherein saidmessage is communicated directly from the MCD to the selected one of thebusinesses or individual sellers through a real-time communicationchannel established by the remote computer server.